package com.dhcc.DRGsHosp.facade;

import java.util.List;
import java.util.Map;

import com.dhcc.DRGsHosp.facade.dto.IndexCalDTO;
import com.dhcc.DRGsHosp.facade.dto.KeyDisGroupDTO;

public interface KeyDisGroupFacade {
	
	/**
	 * 
	 * @methodname    :getCaseYears
	 * @description   : 获取病例的年份数据
	 * @param         :
	 * @author        :mazhaoyan
	 * @return        :
	 * @date          :2016年12月16日
	 */
	public List<Object> getCaseYears();
	/**
	 * 
	 *  getCaseYears.  
	 *  @Description：获取病例的年份数据
	 *  @Author WENYI
	 *  @param hospCode
	 *  @return 
	 *  @Date:2018年1月23日下午4:14:32
	 */
	public List<Object> getCaseYears(String hospCode);
	/**
	 * 
	 *  findSizerCondition.  
	 *  @Description：获取模块筛选条件
	 *  @Author mazhaoyan
	 *  @param moudkeCode
	 *  @return 
	 *  @Date:2018年1月6日上午11:49:46
	 */
	public String findSizerCondition(String moudkeCode);
	
	/**
	 * 
	 * @methodname    :setKeyDisGroup
	 * @description   : 设置重点病组
	 * @param         :
	 * @author        :mazhaoyan
	 * @return        :
	 * @date          :2016年12月16日
	 */
	public int setKeyDisGroup(KeyDisGroupDTO keyDisGroupDTO);
	/**
	 * 
	 * @methodname    :getKeyDisGroupDataMdc
	 * @description   :获取重点病组数据 按mdc统计
	 * @param         :
	 * @author        :mazhaoyan
	 * @return        :
	 * @date          :2016年12月15日
	 */
	public List<Map<String,Object>> getKeyDisGroupDataMdc(String[] years,String depCode,String userCode,String hospCode);
	
	/**
	 * 
	 * @methodname    :getKeyDisGroupDataDrg
	 * @description   : 获取重点病组数据 按drg统计  MDC下DRG或者全部MDC下DRG
	 * @param         :
	 * @author        :mazhaoyan
	 * @return        :
	 * @date          :2016年12月16日
	 */
	public List<Map<String,Object>> getKeyDisGroupDataDrg(KeyDisGroupDTO keyDisGroupDTO);
	
	/**
	 *  获取重点病组以外的病组 让用户筛选
	 *  getExtraDisGroup.  
	 *  @Description：
	 *  @Author ChenHanlin
	 *  @param years 
	 *  @param depCode
	 *  @param userCode
	 *  @param hospCode 院区编码
	 *  @return 
	 *  @Date:2018年1月29日下午3:09:29
	 */
	public List<Map<String,Object>> getExtraDisGroup(String[] years,String depCode,String userCode,String hospCode);
	
	
	/**
	 * 
	 * @methodname    :delKeyDisGroup
	 * @description   : 删除重点病组
	 * @param         :
	 * @author        :mazhaoyan
	 * @return        :
	 * @date          :2016年12月16日
	 */
	public void delKeyDisGroup(String drgCode,String depCode,String userCode);
	
	/**
	 * 
	 * @methodname    :addKeyDisGroup
	 * @description   : 添加重点病组
	 * @param         :
	 * @author        :mazhaoyan
	 * @param drgCode  	        
	 * @param depCode  科室筛选条件	        
	 * @param userCode 用户编码	        
	 * @return        :
	 * @date          :2016年12月17日
	 */
	public void addKeyDisGroup(String drgCode,String depCode, String userCode);
	
	/**
	 * 
	 * @methodname    :getDisGroupCollectInfo
	 * @description   : 获取病组的汇总信息
	 * @param         :
	 * @author        :mazhaoyan
	 * @return        :
	 * @date          :2016年12月19日
	 */
	public List<Map<String,Object>> getDisGroupCollectInfo(IndexCalDTO dto);
	/**
	 * 
	 * @methodname    :getCaseFeeDistribute
	 * @description   : 获取病例费用分布数据
	 * @param         :
	 * @author        :mazhaoyan
	 * @return        :
	 * @date          :2016年12月23日
	 */
	public List<Map<String,Object>> getCaseFeeDistribute(IndexCalDTO indexCalDTO,int sliderValue);
	/**
	 * 
	 * @methodname    :getQuadrantTrendData
	 * @description   : 象限图趋势图
	 * @param         :
	 * @author        :mazhaoyan
	 * @return        :
	 * @date          :2016年12月23日
	 */
	public Map<String,Object> getQuadrantTrendData(IndexCalDTO dto);
	
	
}

